1. Field of the Invention
The present invention relates to a position-and-attitude recognition method and apparatus to recognize the 3-dimensional position and the 3-dimensional attitude of a monocular vision camera, which is mounted on an autonomous mobile robot or the like, on the basis of image information of the handling object taken by the monocular vision camera.
2. Description of the Prior Art
One of recently developed robot is an autonomous mobile robot, which moves toward a handling object whose shape and absolute coordinate position are already known and executes an active manipulation, such as gripping of the handling object by the robot arm. For this kind of autonomous mobile robot, it is mandatory to recognize the 3-dimensional position thereof with respect to the handling object on the basis of 2-dimensional image information obtained from, for example, a CCD camera installed on the robot. In this case, an excellent apparatus for executing recognition of 3-dimensional position will be required to realize high accuracy and rapid calculation, as well as reduction of computational costs.
Among conventional methods, a relatively simple method is disclosed, for example, in Unexamined Japanese Patent Application No. HEI 3-166072/1991 or Unexamined Japanese Patent Application No. HEI 3-166073/1991. According to these conventional methods, a camera takes a view of a geometric shape a so-called marker whose shape and size are already known, fixed on the handling object. For example, obtaining a center of gravity of the marker based on thus obtained two-dimensional image information, the three-dimensional positional relationship between the camera and the handling object is determined.
However, the above conventional method always requires a marker to be provided on the handling object; therefore, it takes a significantly long time for preparation of markers and the camera needs its position to be adjusted its position with respect to the marker every time so that an optical axis of the camera is always perpendicular to each marker. Such an aiming adjustment will be troublesome, if applied to a camera which varies its position and attitude flexibly.
In order to solve this kind of problem, there is known a theoretical method for computer vision that inversely calculates the parameters representing the position and attitude of a camera based on the components of the perspective transformation matrix in the solution of the Perspective n-Point problem with a least-square estimation. According to this method, its principle assures obtaining the parameters representing the position and attitude of the camera even if the relationship is unknown between the optical axis of the camera and the origin of the absolute coordinates depicting the object.
However, in a case where a computer is actually used for the execution of explicit calculations, not only are the equations to be adopted very complicated but the volume of calculation becomes huge. It means that promptness in calculation is not guaranteed and, therefore, practical use of this kind method is not recommendable.
In addition to the above, it is be further predicted that the contour of the object may not be accurately detected due to variation of background environment of the object and difference of illumination. Thus, it becomes difficult to realize a highly accurate and robust extraction of the feature points.
Furthermore, when the perspective transformation matrix derived from the Perspective n-Point problem is used to estimate the error between the image feature point of the object and an estimated feature point thereof, estimation is generally carried out based on a distance between the image feature point and the estimated feature point. Accordingly, an intersecting condition of line segments may deteriorate the accuracy of estimation, which will give adverse effects to the robustness of recognition result.